﻿/*
 * DomainGeometryTypeEnum
 * 
 * initial implementation : 20.11.2008
 *
 * Copyright (c) Adam Sida, asida@centrum.cz.
 * All rights reserved.
 * 
 * for license see Petra.Gis.License.txt
 */
namespace Petra.Gis.DataServices
{
  /// <summary>
  /// defines basic Feature domain geometry types recognized by gis data models
  /// Petra.Gis supports many geometry types but these types are assignable
  /// to few below defined domains.
  /// </summary>
  public enum DomainGeometryTypeEnum : int
  {
    /// <summary>
    /// point type is any point type feature such as:
    /// tree, small building, column, geodetic point,
    /// area type cartographic symbol, street light, trash,...
    /// </summary>
    Point = 1,

    /// <summary>
    /// linear type feature such as:
    /// road, railway, stream, utility (waste, gas, electricity,...),
    /// non area border, ...
    /// </summary>
    Line = 2,

    /// <summary>
    /// areal type feature such as:
    /// lake, building, large river, continent, state, county, parcel
    /// area of interest,..
    /// </summary>
    Surface = 3,

    /// <summary>
    /// human readable map label for either
    /// cartographic map presentation or easy map human understanding
    /// label contains text (any alphanumeric string)
    /// </summary>
    Label = 4,

    /// <summary>
    /// mixed feature is composition of Point, Line, Area, Label
    /// for loosely defined data models
    /// </summary>
    Mixed = 5,

    /// <summary>
    /// grid type covers both image and grid data, typically represents
    /// satellite imagery, orthophoto image, scanned topographic maps,
    /// surface elevation grid model, hydrology surface model,...
    /// </summary>
    Grid = 6

  }
}
